package com.smedi.ismedi.constructionproject.core.domain.repository;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.smedi.ismedi.constructionproject.core.domain.aggregatemodel.ProjectApply;
import com.smedi.ismedi.constructionproject.core.domain.aggregatemodel.ProjectApplyQuery;
import com.smedi.ismedi.constructionproject.core.domain.aggregatemodel.ProjectAssignment;

import java.util.List;

/**
 * @Author: xulinjun
 * @Date: 2021-6-8 10:56
 */
public interface ProjectApplyRepository {
    ProjectApply saveProjectApply(ProjectApply projectApply);

    void deleteProjectApply(ProjectApply projectApply);

    ProjectApply getProjectApplyOne(ProjectApplyQuery projectApplyQuery);

   List<ProjectApply> getProjectApplyList(ProjectApplyQuery projectApplyQuery);

    /**
     * 项目申请 查询 分页
     *
     * @param projectApplyQuery        项目申请查询
     * @return Page<ProjectApply>
     */
    Page<ProjectApply> getProjectApplyPage(ProjectApplyQuery projectApplyQuery);

    Boolean restoreProject(Long projectId);
}
